Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR implements three small changes to the workflow.
First I improved the logging of the processing table caching, which was printing a line for every file it read it. It now prints one line with a list of files it will load in the most concise way possible. This just improves the logging but doesn't impact the downstream jobs at all.
Second I changed the order of operations in desi_submit_prod so that it now checks for the existence of a processing table first before checking the number of jobs in the queue. This allows us to skip hundreds of completed nights without needing to query the queue each time. This resolves Issue #2347 .
Third, I fixed a bud in the calibration submission that arose when cleaning up nights that crashed due to Slurm issues. When some calibrations are in the processing table the code correctly skipped over them but didn't include those jobs in the joint fitting of e.g. the
psfnight
. This is wrong, as we want all 5 arcs to be included in thepsfnight
job if they are good. The same situation was happening with flats. This now fixes that by using the existing rows in the processing table and passing the complete set of jobs to thepsfnight
andnightlyflat
job submitter.I tested this in
/global/cfs/cdirs/desi/spectro/redux/test_kibo
by sym-linking thecalibnight
,exposures
,preproc
, andexposure_tables
directors; copying the incomplete processing table from 20211220 currently in Kibo; and runningdesi_proc_night
out of my branch. It identifies the processing table entries and includes them in the joint fit (this currently fails inmain
). The output of the processing table caching is far fewer lines and works as expected.Finally, I copied over the config file from Kibo and ran a test of
desi_submit_prod
, which now checks for processing table existence before checking the queue, and is therefore much faster in getting to nights that actually need to be submitted.